Enabling ntelligent media naming and icon generation utilizing semantic metadata

ABSTRACT

A set of media files are identified within a data store. Each of the media files lack user established file names, lack user established icons, or lack user established file names and icons. The media files are analyzed to determine semantic metadata. For at least a subset of the media files, the semantic metadata is utilized to automatically generate unique and meaningful file names, file icons, or both file names and file icons for each of the media files in the subset.

BACKGROUND

The present invention relates to the field of media and, moreparticularly, to enabling intelligent media naming and icon generationutilizing semantic metadata.

In today's digital world, many types of devices can produce a variety ofmedia which can lead to substantial amounts of generated media files.For example, a mobile phone can allow a user to take pictures, recordmovies, and music which can be stored on the mobile phone as mediafiles. The media content can quickly become disorganized and/ordifficult to manage due to the generic automated naming generationcapabilities of devices. Consequently, retrieval and reuse of thisgenerated media can be hindered by cryptic filenames, incorrectly namedfiles, and/or misleading icons.

Traditionally, media capture devices often name media files in analphanumeric value combination and maintain a progression order. Forexample, the first image file of a camera is often labeled (e.g.,IMG_(—)0001) with number values of the filename are incremented for eachsubsequent picture (e.g., IMG_(—)0002). These file names do not providemuch information and lack the ability to give meaningful naming to themedia files. Currently, organization methods require manual processes tobe completed by device owners to give media files generated meaningfulnames. For example, the media file has to be inspected and namedmanually. That is, media files must be renamed individually or foldersmust be created to group multiple files together based on theirrelevancy. Such known solutions are tedious, unintuitive, timeconsuming, and failure ridden.

BRIEF SUMMARY

One aspect of the present invention can include a method for enablingintelligent media naming and icon generation utilizing semanticmetadata. One or more media files within a data store can be identified.The media files can include a filename and a file icon. The files can bean image file, a video file, an audio, or a document file. The mediafiles can be semantically analyzed to determine semantic metadata. Thesemantic metadata can include a content identification keyword, anexplicit relationship, or an implicit relationship. A filename and afile icon can be generated associated with the media files from thesemantic metadata.

Another aspect of the present invention can include a system forenabling intelligent media naming and icon generation utilizing semanticmetadata. A naming engine can be configured to generate a filename andan icon associated with semantic metadata of a media file. The mediafile can be an image file, a video file, an audio, or a document file.The semantic metadata can be a content identification keyword, anexplicit relationship, or an implicit relationship. A data store canpersist a media file, a customization profile, semantic metadataassociated with the media file, or a semantic ruleset. The semanticruleset can control the generation of the filename and/or icon.

Yet another aspect of the present invention can include a computerprogram product that includes a computer readable storage medium havingembedded computer usable program code. The computer usable program codecan be configured to select a media file within a data store, whereinthe media file is at least one of an image, a video, an audio, and adocument. The computer usable program code can analyze the media file todetermine semantic metadata associated with the media file. The semanticmetadata can be a content identification keyword, an explicitrelationship, or an implicit relationship. The computer useable programcode can create an alias file, wherein the alias file comprises of areference to the media file, wherein at least one of the filename andthe icon of the alias file is determined from the semantic dataassociated with the media file.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1A is a schematic diagram illustrating a set of scenarios forenabling intelligent media naming and icon generation utilizing semanticmetadata in accordance with an embodiment of the inventive arrangementsdisclosed herein.

FIG. 1B is a schematic diagram illustrating a scenario for enablingintelligent media naming and icon generation utilizing semantic metadatain accordance with an embodiment of the inventive arrangements disclosedherein.

FIG. 2 is a flowchart illustrating a method for enabling intelligentmedia naming and icon generation utilizing semantic metadata inaccordance with an embodiment of the inventive arrangements disclosedherein.

FIG. 3 is a schematic diagram illustrating a system for enablingintelligent media naming and icon generation utilizing semantic metadatain accordance with an embodiment of the inventive arrangements disclosedherein.

FIG. 4 is a schematic diagram illustrating a set of embodiments forenabling intelligent media naming and icon generation utilizing semanticmetadata in accordance with an embodiment of the inventive arrangementsdisclosed herein.

FIG. 5 is a schematic diagram illustrating a data flow diagram forenabling intelligent media naming and icon generation utilizing semanticmetadata in accordance with an embodiment of the inventive arrangementsdisclosed herein.

FIG. 6 is a schematic diagram illustrating a set of interfaces forenabling intelligent media naming and icon generation utilizing semanticmetadata in accordance with an embodiment of the inventive arrangementsdisclosed herein.

DETAILED DESCRIPTION

The present disclosure is a solution for enabling intelligent medianaming and icon generation utilizing semantic metadata. In the solution,semantic metadata associated with a media file can be utilized toorganizing and/or name media files. Semantic metadata can be determinedduring media creation and/or during post production. Semantic metadatacan be obtained utilizing traditional and/or proprietary techniquesincluding, but not limited to, image recognition, voice recognition,event recognition, and the like. Semantic metadata can be utilized toname the media file and/or generate a meaningful icon associated withthe media file. For example, a picture of a Dave at a Jen's birthdayparty can be analyzed to determine an event and a person of interestresulting in the picture being automatically named “Dave at Jen'sBirthday Party.jpg”. That is, the disclosure can leverage semantic datato assign and associate meaningful names to media data automatically andfacilitate searching on content.

As will be appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a system, method, downloadable device app,or computer program product. Accordingly, aspects of the presentinvention may take the form of an entirely hardware embodiment, anentirely software embodiment (including firmware, resident software,micro-code, etc.) or an embodiment combining software and hardwareaspects that may all generally be referred to herein as a “circuit,”“module” or “system.” Furthermore, aspects of the present invention maytake the form of a computer program product embodied in one or morecomputer readable medium(s) having computer readable program codeembodied thereon.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readable signalmedium or a computer readable storage medium. A computer readablestorage medium may be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any suitable combination of the foregoing. Morespecific examples (a non-exhaustive list) of the computer readablestorage medium would include the following: an electrical connectionhaving one or more wires, a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), an optical fiber,a portable compact disc read-only memory (CD-ROM), an optical storagedevice, a magnetic storage device, or any suitable combination of theforegoing. In the context of this document, a computer readable storagemedium may be any tangible medium that can contain, or store a programfor use by or in connection with an instruction processing system,apparatus, or device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction processing system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing. Computer program code for carrying out operations foraspects of the present invention may be written in any combination ofone or more programming languages, including an object orientedprogramming language such as Java, Smalltalk, C++ or the like andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The program codemay execute entirely on the user's computer, partly on the user'scomputer, as a stand-alone software package, partly on the user'scomputer and partly on a remote computer or entirely on the remotecomputer or server. The program code may also execute at least in parton a smart phone, tablet, gaming console, smart consumer electronicdevice, or embedded device. In a hybrid processing scenario whereprogram code executes partially on a client and partially on at leastone remote computers, the remote computer may be connected to the user'scomputer through any type of network, including a local area network(LAN) or a wide area network (WAN), or the connection may be made to anexternal computer (for example, through the Internet using an InternetService Provider).

Aspects of the present invention are described below with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions.

These computer program instructions may be provided to a processor of ageneral purpose computer, special purpose computer, or otherprogrammable data processing apparatus to produce a machine, such thatthe instructions, which execute via the processor of the computer orother programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

FIG. 1A is a schematic diagram illustrating a set of scenarios 110, 150for enabling intelligent media naming and icon generation utilizingsemantic metadata in accordance with an embodiment of the inventivearrangements disclosed herein. Scenarios 110, 150 can be present in thecontext of scenario 180, method 200, system 300, embodiment 410, 420diagram 510, and/or interfaces 610, 630. In scenario 110, 150, media122, 162 can be intelligently named utilizing semantic metadata 130,172. Semantic metadata 130, 172 can be obtained by engine 120, 170 viaone or more traditional and/or proprietary semantic analysis processes.For example, semantic metadata can be obtained through facialrecognition of persons in a picture. Metadata 130, 172 can be utilizedto determine filename 134, 174 and/or icon 138, 178. That is, thedisclosure can facilitate meaningful naming and/or presentation of media122, 162.

As used herein, media 122, 162 can be a digital content associated witha computing device (e.g., camera 112, 152). Media 122, 162 can include,but is not limited to, an image, a video, an audio, a document, and thelike. Media 122, 162 can include one or more combinations of images,video, audio, documents, and the like. Media 122, 162 can be associatedwith a filename, an icon, a file system path, an owner, an author, acomputing device, a permissions setting, and the like. Media 122, 162can be associated with logical groupings including, but not limited to,a collection, a set, and the like. In one embodiment, the disclosure canbe utilized to rename a collection of images within a slideshowapplication.

As used herein, semantic metadata 130, 172 can be a data set associatedwith media 122, 162. Metadata 130, 172 can include, but is not limitedto, a semantic filename (i.e. an alias), a semantic icon (i.e. analternate icon), presence data, content identification data (e.g., tags,attributes), and the like. Metadata 130, 172 can be obtained from one ormore internal and/or external data sources. For example, a semanticrepository can be utilized to obtain metadata 130 associated with amedia 122. Metadata 130, 172 can be persisted within devices 112, 152within a peripheral communicatively linked to devices 112, 152, and/orwithin an external repository (e.g., cloud). In one instance, metadata130, 172 can be associated with an ontology, a dictionary, a metadatahierarchy, and the like.

Scenario 110 can include a media creation portion 102 and a mediastorage portion 104. In media creation portion 102, a creator 111 cancreate a media 122 of a subject 114 at a location 116 using camera 112.For example, Julie can take a picture of her friend Jackie in front of asteak house after a dinner at the steak house. In media storage portion104, media 122 can be appropriately named (e.g., Jackie atSteakhouse.jpg) using semantic metadata and stored within camera 112data store 118. That is, the disclosure can permit semantic naming andicon generation during media 122 creation based on content within media,participant relationships, and the like.

The media 122 can be conveyed to a Smart Naming and Analyzing Process(SNAP) engine 120. In one instance, the engine 120 can be a firmwareprogram within camera 112. For example, engine 120 can be a component ofa file storage driver of camera 112. Media 122 can be analyzed utilizingone or more semantic analysis techniques. For example, engine 120 canleverage face recognition algorithms and Global Positioning System datato establish a picture of Jackie was taken at a steak house on “101 FoodAvenue”. The metadata 130 can be utilized to generate semantic filename134 of media 122. For example, filename 134 can be set to “Jackie atSteak House.jpg”. Metadata 130 can be utilized to generate a relevantsemantic icon 138 for media 122. For example, icon 138 can be a portraitof Jackie which can be utilized for rapid identification of the subject(e.g., 114) of media 122 within a file manager application interface.Upon creation of filename 134 and/or icon 138, the media 122 can bestored as a semantic media 139 within data store 118.

In one instance, filename 134, icon 138 can be generated by determininginherent relationships between semantic metadata. For example, engine120 can determine that Julie and Jackie are friends and can create afilename 134 “My friend Jackie.jpg” for media 122. In one embodiment,engine 120 can leverage social networking data to determine relevantsemantic metadata. For example, engine 120 can utilize FACEBOOK todetermine the identity and relationship of people within a picture. Itshould be appreciated that semantic metadata 130 can include explicitrelationship data, user provided metadata, and the like.

Scenario 150 can include a media creation 140 and a post production 142portion. In media creation portion 140, a creator 151 can create media162 of subject 144 using video camera 152. For example, media 162 caninclude two video samples automatically named by camera 152 as“Vid_(—)0001.mpg” and Vid_(—)0002.mpg”. In post production portion 142,media 162 can be conveyed to a computing device 154. For example, camera152 can be connected to computer 154 which can permit downloading ofmedia 162 to computer 154 hard drive. Media 162 can be conveyed to aSNAP engine 170 which can obtain semantic metadata 172 from media 162.In one instance, SNAP engine 170 can be a functionality of a videomanipulation/management application (e.g., ADOBE PREMIER). In oneembodiment, engine 170 can perform one or more traditional and/orproprietary analysis of media 162 during post production 142. Engine 170can perform a semantic analysis of media 162 to extract semanticmetadata 172. For example, engine 170 can utilize the relative location(e.g., downtown Dallas) and/or date and time (e.g., morning) informationto determine relevant metadata 172. Metadata 172 can be utilized togenerate an appropriate semantic filename 174 and a semantic icon 178for each media (e.g., Vid_(—)0001, Vid_(—)0002). For example, metadata172 can be utilized to generate a filename “Morning in Starbucks.avi”with an icon of a Starbucks logo for the first media (e.g., Vid_(—)0001)and a second filename “Morning on Street.avi” with an icon of people ona street for the second media (e.g., Vid_(—)0002).

In one instance, analysis and renaming of media 162 can be performedduring media 162 transfer (e.g., import action). In another embodiment,analysis and renaming of media 162 can be performed during a postproduction management (e.g., editing workflow).

It should be appreciated that semantic filename 134, 174 and/or icon138, 178 can be modified by a user permitting correction of filenameselection. Engine 120, 170 can include an auto-learning module which canover time improve content naming based on feedback and self-learning.

It should be appreciated that the semantic filename 134, 174 and/orsemantic icon 138, 178 can correspond to the media 122, 162 filenameand/or icon. That is, media 122, 162 can be renamed to filename 134, 174and an associated icon can be changed to icon 138, 178. For example,during scenario 110, media 122 can be persisted in a temporary volatilememory (e.g., cache) using a temporary filename (e.g., randomlygenerated filename) which can be changed when the media 122 is persistedwithin a permanent non-volatile storage (e.g., data store 118) as media139.

Drawings presented herein are for illustrative purposes only and shouldnot be construed to limit the invention in any regard. It should beappreciated that the disclosure is not limited to the scenario 110, 150and can be utilized during media management processes (e.g., libraryorganization), an import/export action, and the like. In one embodiment,the disclosure can utilize embedded data to determine semantic metadata.In the embodiment, data can include, but is not limited to, a graphic, achart, a graph, an image, an audio, a video, a text element, astructured document, an unstructured document, and the like. It shouldbe appreciated that engine 120, 170 can be similar or identical to anaming engine 320.

FIG. 1B is a schematic diagram illustrating a scenario 180 for enablingintelligent media naming and icon generation utilizing semantic metadatain accordance with an embodiment of the inventive arrangements disclosedherein. Scenario 180 can be present in the context of scenario 110, 150,method 200, system 300, embodiment 410, 420, diagram 510, and/orinterfaces 610, 630. In scenario 180, a media 181 can include dataand/or metadata which can be utilized to associate semantic media data191 to the media 181. For example, media 181 can be a video of avacation holiday which can be labeled meaningfully by utilizing imageand voice recognition technologies. In one instance, media 191 caninclude semantic filename 182, semantic icon 184, presence data, contentidentification data, and the like. In the instance, filename 182 caninclude multiple filenames (e.g., candidate filenames 196) and icons 184can include multiple icons (e.g., candidate icons 198). For example,media 191 can have several alias names (e.g., 196) which can be selectedby a user based on user preference.

It should be appreciated that filename/icon generation can be dependenton any combination of semantic analysis processes (e.g., imagerecognition, voice recognition). For example, candidate icons 198 can begenerated utilizing both image metadata 192 and voice metadata 194.

SNAP engine 190 can process media 181 to determine semantic metadata192, 194. In one embodiment, metadata 192, 194 can include a keyword(e.g., tag) and attributes which can be evaluated to determine keywordrelevancy. That is, utilizing attributes associated with a keyword canpermit the association of meaningful keywords and the disassociation ofnon-meaningful keywords to the media. Attributes can include, but is notlimited to a frequency value, a weighting value, a priority value, andthe like. For example, engine 190 can utilize image recognition todetermine a keyword such as Julie having a frequency of five hundred, aweighting of five, and a priority of two which can total to a value oftwo thousand. Attributes can be calculated utilizing one or moretraditional and/or proprietary mechanisms. For example, a frequencyvalue can be determined by how many times a person appears in a portionof a video sample.

In one embodiment, frequency, weighting, and/or priority values can becomputed to determine a score which can be utilized to rank keywords inorder of significance. For example, when the keyword (e.g., Julie) score(e.g., two thousand) is above a threshold value (e.g., one thousand),the keyword can be ranked up, and when the keyword (e.g., Victor) score(e.g., five hundred) is below the threshold value, the keyword can beranked down. It should be appreciated that the score can be computedutilizing arbitrarily complex algorithms. For example, score can be anaverage of each attribute or can be a value computed utilizing one ormore mathematical formulas.

In one instance, keywords from each metadata 192, 194 set (e.g., Julie,vacation) which have the highest values can be selected to be utilizedduring candidate filename 196 generation and/or icon 198 creation. Forexample, a photo taken by Julie in San Francisco on vacation at Pier 39can be appropriately named “Pier39,SanFrancisco_Julie_vacation” (e.g.,182) presented as icon ICON_B (e.g., 184).

In one embodiment, engine 190 can utilize a prefix/suffix filenameconstruction to intelligently name media 181. In the embodiment,semantic metadata (e.g., tags) having the greatest significance can beutilized as a prefix (e.g., Pier 39) for a filename and each successivemetadata can be appended. It should be appreciated that metadataquantity can be arbitrarily limited based on user preference, filesystem limitations, and the like. For example, a user can establish thatthe three most significant keywords “Pier39,SanFranciso”, “Julie”,“vacation” can be utilized to create a filename 182.

In one embodiment, candidate 196 can be utilized to present a userspecific filename for media. In the embodiment, the user identity can beutilized to determine an appropriate filename/icon for media 191 (e.g.,based on historic selection, user relationship to media, etc). Forexample, when Victor views media 191 within a file manager, ICON_C canbe presented and when Julie views media 191 within a file manager ICON_Bcan be presented.

In one instance, candidate filenames 196 can be persisted within arepository associated with media 191. In the instance, filenames 196 canbe searchable permitting keyword searching on a media file via multiplefilenames 196.

Drawings presented herein are for illustrative purposes only and shouldnot be construed to limit the invention in any regard. It should beappreciated that semantic analysis can be performed by one or moreexternal sources. For example, image recognition can be processed by aGOOGLE PICASA application and/or Web service. In one embodiment, thedisclosure can leverage one or more biometric sources to determinesemantic metadata associated with semantic media 191. It should beappreciated that engine 190 can be similar or identical to a namingengine 320.

FIG. 2 is a flowchart illustrating a method 200 for enabling intelligentmedia naming and icon generation utilizing semantic metadata inaccordance with an embodiment of the inventive arrangements disclosedherein. Method 200 can be present in the context of scenario 110, 150,180, system 300, embodiment 410, 420, diagram 510, and/or interfaces610, 630. In method 200, a media set can be semantically enhanced toimprove media searchability and/or identification. Method 200 can beperformed in real-time and/or near real-time.

In step 205, a media set can be identified. Media set can beautomatically and/or manually identified. Media set can include, but isnot limited to, a collection, a slideshow, a grouping, a user selection,and the like. For example, media set can be identified by a userselection within a file manager. In step 210, a media file of the setcan be selected. Selection can include an ordered selection and/or arandom selection. For example, selection can be alphabetical or by date(e.g., most recent). In step 215, the selected media can be analyzed.Analysis can include one or more traditional and/or proprietarytechniques. In one embodiment, analysis can include a semantic analysisto determine a selected media content and/or significance. In theembodiment, analysis can include, but is not limited to, linguisticanalysis, semantic structure analysis, and the like.

In step 220, semantic metadata associated with the media can bedetermined based on one or more attributes. In step 225, a candidatefilename or a list can be generated based on the metadata. The candidatefilename or a list can be generated based on one or more rules which caninclude, user established preferences, automatically determinedsettings, and the like. In step 230, the candidate filename or a listcan be optionally presented for selection. Presentation can include auser interface which can permit user selection of the candidatefilename. For example, a pop-up dialog box can be presented to confirmthe candidate filename selection. In step 235, if the candidate filenameis selected (manually through step 230 or automatically without step230), the method can continue to step 240, else return to step 225 toregenerate. In one contemplated embodiment, an optional step isprocessed to learn user preference based on a selection (or a defaultvalue, if no selection is made). When this step is utilized, the userpreference is utilized in the method/process.

In step 240, media filename can be changed based on the candidateselection. In step 245, a candidate icon or a list can be generatedbased on the metadata. In one instance, the candidate icon can beselected from an existing set of icons (e.g., database of icons). Inanother instance, metadata can be utilized to generate a customized iconfor the media. Icon generation can be performed utilizing one or moretraditional and/or proprietary image generation tools. In step 250, thecandidate icon or a list can be optionally presented for selection. Inone instance, selection can include a preview of candidate icon whichcan enable a user to view the icon. In step 255, if the candidate iconis selected (manually through step 250 or automatically without step250), the method can continue to step 260, else return to step 245 toregenerate. In one embodiment, user preference(s) can be determined(based on user selection, a user profile, defaults, or other criteria)and utilized, herein. In step 260, the media icon can be changed to thecandidate icon based on the selection. In step 265, if there are morefiles in the set, the method can continue to step 270, else return tostep 210. In step 270, the method can end.

It should be appreciated that filename collision detection and/orresolution can be performed within the method 200. Collision detectionand/or resolution can be performed utilizing one or more traditionaland/or proprietary techniques.

Drawings presented herein are for illustrative purposes only and shouldnot be construed to limit the invention in any regard. Method 200 caninclude one or more optional steps which can be omitted permitting thefunctionality of method 200 is retained. For example, a learning stepcan be implemented to learn/determine user preferences. Steps 210-265can be repeated for each file within the media set. Steps 225-235 can beiteratively repeated to improve candidate filename generation. Steps245-255 can be iteratively repeated to improve candidate icongeneration. It should be appreciated that candidate filename and/or iconcan be automatically determined utilizing heuristic mechanisms.

FIG. 3 is a schematic diagram illustrating a system 300 for enablingintelligent media naming and icon generation utilizing semantic metadatain accordance with an embodiment of the inventive arrangements disclosedherein. System 300 can be present in the context of scenario 110, 150,180, method 200, embodiment 410, 420, diagram 510, and/or interfaces610, 630. In system 300, a naming engine 320 can permit media 352 to beappropriately named utilizing semantic metadata 314 obtained from themedia 352. In one instance, metadata 354 can be conveyed to engine 320which can be utilized to generate metadata 314 which can be communicatedto device 350. System 300 can be communicatively linked via one or morenetworks 380.

Media sever 310 can be a hardware/software entity able to execute namingengine 320. Media server 310 functionality can include, but is notlimited to, authentication, encryption, communication, media management,registration of external/alternate components, and the like. Mediaserver 310 can include, but is not limited naming engine 320,customization profile 312, semantic metadata 314, data store 330, andthe like. In one embodiment, media server 310 can be a component of ahome media server. In another embodiment, media server 310 can be afunctionality of a portable media device. In one embodiment, server 310can be a drop-in replacement for an existing media server.

Naming engine 320 can be a hardware/software element configured tointelligently name media 352. Engine 320 functionality can include, butis not limited to, media 352 conversion, media 352 compression,registration of media, and the like. Engine 320 can include, but is notlimited to, media handler 322, semantic analyzer 324, candidate engine326, settings 328, and the like. In one embodiment, engine 320functionality can be present within an Application Programming Interface(API). In another embodiment, engine 320 functionality can be presentwithin a Web-based service. In yet another instance, engine 320 can be afunctionality of a networked computing element. It should be appreciatedthat engine 320 can include additional components such as a profiler, analgorithm selection component, and the like. In one embodiment, engine320 can be configured to enable content mining and analysis byleveraging services in the cloud. In one embodiment, functionality ofengine 320 can be present within a plug-in.

Media handler 322 can be a hardware/software entity able to manage media352, metadata 354, and/or semantic metadata 314. Handler 322functionality can include, but is not limited to, media 352identification, media 352 selection, media 352 specific operations(e.g., encode, decode), and the like. Handler 322 can communicate withcomputing device 350 to obtain media 352 and/or metadata 354. In oneembodiment, handler 322 can add, modify, and/or delete metadata 354and/or semantic data 314.

Semantic analyzer 324 can be a hardware/software element configured todetermine semantic metadata 314 associated with media 352. Analyzer 324functionality can include, but is not limited to, media 352 analysis,metadata 354 analysis, semantic metadata analysis 314, attributeevaluation, and the like. Analyzer 324 can include voice recognition,image recognition, a text analysis (e.g., lexical analysis), eventrecognition, object recognition, and the like. In one embodiment,incorrect metadata 314 can be excluded during analysis using traditionaland/or proprietary noise cancellation techniques. In one instance,analyzer 324 can be utilized to compute a score for keywords (e.g.,metadata 314, metadata 354) associated with the media 352. In theinstance, score can be associated with a threshold value, a rank, andthe like. It should be appreciated that the threshold value can be auser established value, an automatically determined value, and the like.Score can be a result of a simple mathematical computation, astatistical computation, and the like.

Candidate engine 326 can be a hardware/software able to determine one ormore candidate filenames and/or icons for media 352. Engine 326functionality can include, but is not limited to, candidate filenamegeneration, candidate filename selection, candidate icon generation,candidate icon selection, and the like. In one embodiment, engine 326can utilize traditional and/or proprietary heuristics to enable theengine 326 to iteratively improve candidate generation and/or selection.

Settings 328 can be one or more configuration options for establishingthe behavior of system 300, server 310, and/or engine 320. Settings 328can include, but is not limited to, handler 322 options, analyzer 324settings, engine 326 options, and the like. Settings 328 can be manuallyand/or automatically established. In one instance, settings 328 can bepresented within a user interface including, but not limited to, mediaserver 310 interface (not shown), interface 356, and the like.

Customization profile 312 can be one or more user established settingsfor generating metadata 314, candidate filenames, candidate icons, andthe like. Profile 312 can be established based on historic selections ofcandidate filenames/icons, historic settings, and the like. In oneinstance, profile 312 can include a whitelist, a blacklist, and thelike. For example, a blacklist can include a set of keywords and personsto ignore during semantic analysis. In one embodiment, profile 312 canbe utilized to refine the accuracy functionality of engine 320. In oneinstance, profile 312 can include user accounts which can be utilized asexternal data sources to enhance content mining algorithms. Profile 312can support a LINKEDIN profile (e.g., account information), a FACBOOKprofile, TWITTER profile, a custom database information, and the like.

Semantic metadata 314 can be one or more data sets associated with media352. In one instance, metadata 314 can include, a keyword (e.g., tag),an attribute, a category and the like. Metadata 314 can be persistedwithin data store 330, a metadata repository, and the like. In oneinstance, metadata 314 can conform to an Extensible Markup Language, acomma delimited value format, and the like. For example, metadata 314can conform to a name value pairing. In one instance, semantic metadata314 can be associated with metadata 354. For example, a locationmetadata (e.g., GPS location) can be associated with the name of anevent (e.g., first bike ride). That is, metadata 354 can be imbued withmeaning utilizing keywords, attributes, and the like.

Data store 330 can be a hardware/software component able to persistprofile 312, metadata 314, media 352, ruleset 332, and the like. Datastore 330 can be a Storage Area Network (SAN), Network Attached Storage(NAS), and the like. Data store 330 can conform to a relational databasemanagement system (RDBMS), object oriented database management system(OODBMS), and the like. Data store 330 can be communicatively linked toserver 310 in one or more traditional and/or proprietary mechanisms. Inone instance, data store 330 can be a component of Structured QueryLanguage (SQL) complaint database.

Semantic ruleset 332 can be one or more rules for creating and/ormanaging semantic metadata 314. Ruleset 332 can include, but is notlimited to, a rule, a rule identifier, a media type, a metadata, ametadata identifier, a comment, a date/time, a permission, and the like.Rule 334 can include, but is not limited to, a condition, a permission,an action, and the like. For example, rule 334 can trigger a keyword tobe set to priority of one when the frequency is above ten. In oneembodiment, ruleset 332 can be persisted within data store 330, device350, and the like. In one instance, ruleset 332 can be heuristicallydetermined utilizing historic rules. It should be appreciated thatruleset 332, rules 334 can be arbitrarily complex.

Computing device 350 can be a hardware/software associated with media352 and/or interface 356. Device 350 can include, but is not limited to,media 352, interface 356, and the like. Computing device 350 caninclude, but is not limited to, a desktop computer, a laptop computer, atablet computing device, a PDA, a mobile phone, and the like. Computingdevice 350 can be communicatively linked with interface 356. In oneinstance, interface 356 can present profile 312, ruleset 332, media 352,metadata 354, and the like.

Media 352 can be a digital content associated with a metadata 354. Media352 can include digitally rights managed (DRM) protected content,unprotected content, and the like. Media 352 can include proprietaryand/or traditional formats. Media 352 formats can include, but is notlimited to, a text file, a rich text file (RTF), an OPENDOCUMENT, aJoint Photographic Experts Group (JPEG), a Portable Network Graphics(PNG), a Graphics Interchange Format (GIF), Moving Picture Experts Group(MPEG), Audio Video Interleave (AVI), a Portable Document Format (PDF),and the like.

Interface 356 can be a user interactive component permitting interactionand/or presentation of media 352, metadata 354, profile 312, and/ormetadata 314. In one embodiment, interface 356 can permit the manualmanagement of semantic metadata 314. For example, a system administratorcan add or remove keywords which can improve semantic filename creation.In one embodiment, the interface 356 can be utilized via a device toapprove the metadata changes being proposed for filenames and icons.Interface 356 can be present within the context of a Web browserapplication, a media management application, and the like. Interface 356capabilities can include a graphical user interface (GUI), voice userinterface (VUI), mixed-mode interface, and the like. In one instance,interface 356 can be communicatively linked to computing device 350.

Network 380 can be an electrical and/or computer network connecting oneor more system 300 components. Network 380 can include, but is notlimited to, twisted pair cabling, optical fiber, coaxial cable, and thelike. Network 380 can include any combination of wired and/or wirelesscomponents. Network 380 topologies can include, but is not limited to,bus, star, mesh, and the like. Network 380 types can include, but is notlimited to, Local Area Network (LAN), Wide Area Network (WAN), VPN andthe like.

Drawings presented herein are for illustrative purposes only and shouldnot be construed to limit the invention in any regard. System 300,server 310, engine 320 can include one or more optional componentspermitting the functionality of the system 300 is retained. In oneembodiment, system 300 can conform to a Service Oriented Architecture(SOA). System 300 can be a distributed computing environment, networkedcomputing environment, and the like.

FIG. 4 is a schematic diagram illustrating a set of embodiments 410, 420for enabling intelligent media naming and icon generation utilizingsemantic metadata in accordance with an embodiment of the inventivearrangements disclosed herein. Embodiment 410, 420 can be present in thecontext of scenario 110, 150, 180, method 200, system 300, diagram 510,and/or interfaces 610, 630. Embodiment 410, 420, define a Smart Namingand Analyzing Process (SNAP) architecture to enable the functionalitydisclosed herein.

In embodiment 410, a SNAP-enabled device/application can acquire mediacontent and metadata such as GPS and time/date information. The mediacontent and metadata can be conveyed to an internal SNAP Client whichcan send the information to a SNAP Engine (e.g., naming engine 320). Thedata can be sent in a streaming fashion for real time processing or abulk fashion for post-processing. The SNAP Engine can process the mediacontent and semantic metadata to generate names, keywords (e.g., tags),and additional semantic metadata. It should be appreciated that not allcomponents presented can be implemented within the SNAP Engine.Functionality of components such as semantic analysis, audiorecognition, image recognition, and the like can be externalized toexternal/alternate components. For example, components can includeservices such as SHAZAM and/or PICASA. It should be appreciated thatalternate components can be selected instead of any built-in componentsthrough a SNAP Profiler.

In embodiment 420, a SNAP-enabled device/application can include a SNAPclient 424 which can be communicatively linked to a SNAP system 422.Operation of embodiment 420 can conform to client-server communication.SNAP system 422 include be linked to external/alternate components whichcan perform semantic analysis, image recognition, audio recognition, andthe like.

Drawings presented herein are for illustrative purposes only and shouldnot be construed to limit the invention in any regard. Embodiment 410,420 architecture can include peer-to-peer architecture, a distributedarchitecture, and the like.

FIG. 5 is a schematic diagram illustrating a data flow diagram 510 forenabling intelligent media naming and icon generation utilizing semanticmetadata in accordance with an embodiment of the inventive arrangementsdisclosed herein. Diagram 510 can be present in the context of scenario110, 150, 180, method 200, system 300, and/or embodiment 410, 420,and/or interfaces 610, 630. Diagram 510 can include components/actions512-524, data 550-558, data store 570, 572 and/or external components530.

In diagram 510, media content can be acquired using a SNAP-enableddevice/application with device/application supported metadata such asGPS, date, and time. Data from the acquisition can be augmented withuser preferences and user configurations from the SNAP profiler 514 tocontrol the behavior and outcome of various SNAP engine components. Datafrom the profiler can be augmented with algorithm selections determinedby the media detector based on media content, metadata, semanticmetadata, user preferences, and user configurations. The media detector516 can be an optional component for a SNAP enabled device/applicationwhich can support multiple media types in order to appropriately selectalgorithms to be used during data mining of the media content. Data fromthe previous step can be augmented with data mined from the mediacontent and semantic metadata based on selected algorithms, userpreferences, and user configurations from SNAP profiler 514. The datamining component 518 can be built into the SNAP engine or externalized.The selected data mining algorithms can be selected and configured bythe user through the SNAP profiler. Data from the previous step can beaugmented with generated names and semantic metadata (e.g., tags,attributes) using selected algorithms, user preferences, and userconfigurations. The algorithms for generating names and semanticmetadata (e.g., tags, attributes) can be configurable by the userthrough the SNAP profiler allowing for weighting, length limitations,and other configurations. Data from the previous step which includeredundant and/or meaningless names and semantic metadata (e.g., tags)can be removed. Removal can be based on user preferences, userconfigurations, user direct input, and learned past user behavior. Newuser preferences, likes/dislikes, new user configurations, and learneduser behavior can be extracted by the final processing component 524 andstored in the database. Newly generated names, keywords (e.g., tags),and semantic metadata (e.g., attributes) for the processed content canbe extracted by the final processing component 524 and stored in thedatabase. User preferences, likes/dislikes, and user behavior stored inthe database can be utilized by SNAP profiler 514 for future use.

FIG. 6 is a schematic diagram illustrating a set of interfaces 610, 630for enabling intelligent media naming and icon generation utilizingsemantic metadata in accordance with an embodiment of the inventivearrangements disclosed herein. Interfaces 610, 630 can be present in thecontext of scenario 110, 150, 180, method 200, system 300, embodiment410, 420, and/or diagram 510. Interfaces 610, 630 can be present in thecontext of an administrative interface, a settings interface, and thelike. In interface 610, a context menu 616 can present a file selection614 action for a media 612. In interface 630, options 632-638 can permitcustomized semantic filename and/or icon generation.

In interface 610, a media 612 can be presented within an operatingsystem of a computing device. Media 612 can be selectable permitting acontext menu to be presented upon selection of media 612. In oneinstance, menu 616 can include a filename selection 614 action enablingdynamic selection of filename display 618. In the instance, candidatefilenames for a media 612 can be presented within a context menu 616.For example, right clicking on media 612 can present selection 616allowing filename display to change from“Pier39,SanFranciso_Julie_vacation” to “Pier39,SanFranciso_Julie_birthday”. It should be appreciated that filenameselection 614 can be present within a pull down menu, an optionsinterface (e.g., media properties dialog), and the like. It should beappreciated that icon selection can be achieved utilizing a similarselection 614 mechanism.

In interface 630, options 632-638 can permit the configuration offilename/icon generation. Option 632 can allow limitations on filenamelength to be applied to candidate filenames to facilitate file systemrestrictions, file naming rules, and the like. For example, option 632can restrict filename length to be limited to twenty characters. Inoption 634, default prefixes for candidate filenames can be selectedbased on user selection. In one instance, option 634 can permit filenameprefixes to begin with a date, a keyword (e.g., semantic metadata), acustom keyword, and the like. Option 636 can permit the configuration offilename concatenation. For example, keywords for filenames can beconcatenated with a space, an underscore, or a hyphen. Option 638 can beutilized to determine the size of generated icons. For example, option638 can permit standard and large size icons to be created. It should beappreciated that interface 630 can include additional options which canaffect filename and/or icon generation.

Drawings presented herein are for illustrative purposes only and shouldnot be construed to limit the invention in any regard. Interface 610,630 can present interface elements including, but not limited to, a textbox, a checkbox, a radio button, and the like. Interface 610, 630 can bepresent within a file manager, a media management application, and thelike.

The flowchart and block diagrams in the FIGS. 1-6 illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be processed substantiallyconcurrently, or the blocks may sometimes be processed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

What is claimed is:
 1. A method for intelligent media naming comprising:a computing device identifying a plurality of media files within a datastore, each of the media files lacking user established file names,lacking user established icons, or lacking user established file namesand icons; the computing device analyzing the plurality of media filesto determine semantic metadata; and the computing device, for at least asubset of the media files, utilizing the semantic metadata to generateunique and meaningful file names, file icons, or both file names andfile icons for each of the media files in the subset.
 2. The method ofclaim 1, wherein each of the media files is a user taken photograph orvideo, wherein the computing device is a digital camera, a videorecorder, or mobile phone, said computing device comprising a camera anda memory, wherein the camera captures environmental input used to createthe media files, and wherein the memory stores the media files.
 3. Themethod of claim 1, wherein the computing device is a set of one or moreservers linked to a network, wherein the one or more servers permitusers to upload and view the media files, wherein the set of one or moreservers provide an option for automatically renaming uploaded mediafiles utilizing semantic metadata.
 4. The method of claim 1, wherein thecomputing device utilizes the semantic metadata to generate unique andmeaningful file names for the subset of the media files.
 5. The methodof claim 1, wherein the computing device utilizes the semantic metadatato generate unique and meaningful file icons for the subset of the mediafiles.
 6. The method of claim 5, wherein the semantic metadata comprisesone or more images extract or derived from corresponding media files,which comprise digitally encoded images or video, wherein the generatedunique and meaningful file icons comprise the one or more images thatwere extracted or derived from corresponding media files.
 7. The methodof claim 1, wherein the computing device utilizes the semantic metadatato generate unique and meaningful file names and file icons for thesubset of the media files.
 8. The method of claim 1, wherein theplurality of media files comprise one or more file types from a group offile types comprising an image file type, a video file type, an audiofile type, and a document file.
 9. The method of claim 1, furthercomprising: the computing device prompting a user via a graphical userinterface to select which of the subset of media files are to bemodified to the generated file name, file icon, or both and which of thesubset of media files are not to be modified to the generated file name,file icon, or both.
 10. The method of claim 1, wherein the analyzingcomprises extracting meaning from one of the media files havingdigitally encoded audio using a speech recognition function, whereinresulting semantic metadata comprises information produced fromprocessing of the speech recognition function.
 11. The method of claim1, wherein the analyzing comprises extracting meaning from one of themedia files having digitally encoded image using an image recognitionfunction, wherein resulting semantic metadata comprises informationproduced from processing of the image recognition function.
 12. Themethod of claim 1, wherein the analyzing determines an identity of ahuman depicted in the corresponding one of the subset of media files,wherein a file name that includes a name of the identified human isgenerated for the corresponding media file.
 13. The method of claim 1,further comprising: the computer establishing a filename prefix from thesemantic metadata for the subset of media files, wherein the prefix is akeyword; the computer determining a unique filename suffix for thesubset of media files wherein the suffix is a keyword; and the computerconcatenating the filename prefix and unique filename suffix to create aunique filename for the subset of media files.
 14. The method of claim1, further comprising: persisting the semantic metadata within at leastone of the plurality of media files as metadata tags.
 15. The method ofclaim 1, wherein the semantic metadata is at least one of a keyword tag,a location information, a personally identifiable information, apresence information, and a content information.
 16. A system forintelligent media naming comprising: one or more processors; one or morememories storing program instructions executable by the one or moreprocessors; a naming engine, comprising at least a subset of the programinstructions, configured to generate at least one of a filename and anicon associated with semantic metadata of a media file, wherein themedia file is at least one of an image file, a video file, an audio, anda document file, wherein the semantic metadata is at least one of acontent identification keyword, an explicit relationship, and animplicit relationship; and a data store able to persist at least one ofa media file, a customization profile, semantic metadata associated withthe media file, and a semantic ruleset, wherein the semantic rulesetcontrols the generation of the at least one filename and icon.
 17. Thesystem of claim 16, further comprising: a media handler, comprising atleast a subset of the program instructions, configured to manage themedia file within the data store; a semantic analyzer, comprising atleast a subset of the program instructions, able to determine thesemantic metadata associated with the media file; and a candidateengine, comprising at least a subset of the program instructions,configured to generate a plurality of candidate filenames and candidateicons from the semantic metadata associated with the media file.
 18. Thesystem of claim 17, the candidate engine able to present the pluralityof candidate filenames and candidate icons within a user interface foruser selection.
 19. A computer program product comprising a computerreadable storage medium having computer usable program code embodiedtherewith, the computer usable program code comprising: computer usableprogram code stored in a storage medium, if said computer usable programcode is run by a processor it is operable to identify a plurality ofmedia files within a data store, each of the media files lacking userestablished file names, lacking user established icons, or lacking userestablished file names and icons; computer usable program code stored ina storage medium, if said computer usable program code is run by aprocessor it is operable to analyze the plurality of media files todetermine semantic metadata; and computer usable program code stored ina storage medium, if said computer usable program code is run by aprocessor it is operable to, for at least a subset of the media files,utilize the semantic metadata to generate unique and meaningful filenames, file icons, or both file names and file icons for each of themedia files in the subset.
 20. The computer program product of claim 19,wherein each of the media files is a user taken photograph or video,wherein the computing device is a digital camera, a video recorder, ormobile phone, said computing device comprising a camera and a memory,wherein the camera captures environmental input used to create the mediafiles, and wherein the memory stores the media files.